package com.ctsi.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ctsi.common.util.Search;
import com.ctsi.system.entity.Material;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;

public interface IMaterialService extends IService<Material> {

    /**
     * 分页业务方法
     *
     * @param search   搜索参数
     * @param material 素材参数
     * @return IPage
     */
    IPage<Material> listPage(Material material, Search search);

    /**
     * 素材上传
     *
     * @param groupId    分组ID
     * @param materialId 素材ID
     * @param file       文件
     * @param isThumb    是否是缩略图
     * @return Map
     */
    Map<String, Object> upload(String groupId, String materialId, MultipartFile file, boolean isThumb);

//    Map<String, Object> uploadIO(String groupId, String materialId, File file, boolean isThumb);

    /**
     * 移动素材至指定素材组
     *
     * @param ids     素材id组
     * @param groupId 分组ID
     * @return boolean
     */
    boolean moveGroup(List<String> ids, String groupId);
}
